<!DOCTYPE html>
<html class="writer-html5" lang="en" data-content_root="./">
<head>
  <meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />

  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>Curve &mdash; rhino3dm 8.6.0-beta1 documentation</title>
      <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=80d5e7a1" />
      <link rel="stylesheet" type="text/css" href="_static/css/theme.css?v=19f00094" />

  
  <!--[if lt IE 9]>
    <script src="_static/js/html5shiv.min.js"></script>
  <![endif]-->
  
        <script src="_static/jquery.js?v=5d32c60e"></script>
        <script src="_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
        <script src="_static/documentation_options.js?v=d31f2110"></script>
        <script src="_static/doctools.js?v=888ff710"></script>
        <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
    <script src="_static/js/theme.js"></script>
    <link rel="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="CurvePiping" href="CurvePiping.html" />
    <link rel="prev" title="ConstructionPlane" href="ConstructionPlane.html" /> 
</head>

<body class="wy-body-for-nav"> 
  <div class="wy-grid-for-nav">
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search" >

          
          
          <a href="index.html" class="icon icon-home">
            rhino3dm
          </a>
              <div class="version">
                8.6.0-beta1
              </div>
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>
        </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
              <p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="AnnotationBase.html">AnnotationBase</a></li>
<li class="toctree-l1"><a class="reference internal" href="Arc.html">Arc</a></li>
<li class="toctree-l1"><a class="reference internal" href="ArcCurve.html">ArcCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="ArchivableDictionary.html">ArchivableDictionary</a></li>
<li class="toctree-l1"><a class="reference internal" href="BezierCurve.html">BezierCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="Bitmap.html">Bitmap</a></li>
<li class="toctree-l1"><a class="reference internal" href="BoundingBox.html">BoundingBox</a></li>
<li class="toctree-l1"><a class="reference internal" href="Box.html">Box</a></li>
<li class="toctree-l1"><a class="reference internal" href="Brep.html">Brep</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepEdge.html">BrepEdge</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepEdgeList.html">BrepEdgeList</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepFace.html">BrepFace</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepFaceList.html">BrepFaceList</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepSurfaceList.html">BrepSurfaceList</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepVertex.html">BrepVertex</a></li>
<li class="toctree-l1"><a class="reference internal" href="BrepVertexList.html">BrepVertexList</a></li>
<li class="toctree-l1"><a class="reference internal" href="Circle.html">Circle</a></li>
<li class="toctree-l1"><a class="reference internal" href="CommonObject.html">CommonObject</a></li>
<li class="toctree-l1"><a class="reference internal" href="ComponentIndex.html">ComponentIndex</a></li>
<li class="toctree-l1"><a class="reference internal" href="Cone.html">Cone</a></li>
<li class="toctree-l1"><a class="reference internal" href="ConstructionPlane.html">ConstructionPlane</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Curve</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#rhino3dm.Curve"><code class="docutils literal notranslate"><span class="pre">Curve</span></code></a><ul>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.Domain"><code class="docutils literal notranslate"><span class="pre">Curve.Domain</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.Dimension"><code class="docutils literal notranslate"><span class="pre">Curve.Dimension</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.SpanCount"><code class="docutils literal notranslate"><span class="pre">Curve.SpanCount</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.Degree"><code class="docutils literal notranslate"><span class="pre">Curve.Degree</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.IsClosed"><code class="docutils literal notranslate"><span class="pre">Curve.IsClosed</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.IsPeriodic"><code class="docutils literal notranslate"><span class="pre">Curve.IsPeriodic</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.PointAtStart"><code class="docutils literal notranslate"><span class="pre">Curve.PointAtStart</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.PointAtEnd"><code class="docutils literal notranslate"><span class="pre">Curve.PointAtEnd</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.TangentAtStart"><code class="docutils literal notranslate"><span class="pre">Curve.TangentAtStart</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.TangentAtEnd"><code class="docutils literal notranslate"><span class="pre">Curve.TangentAtEnd</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.CreateControlPointCurve"><code class="docutils literal notranslate"><span class="pre">Curve.CreateControlPointCurve()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.ChangeDimension"><code class="docutils literal notranslate"><span class="pre">Curve.ChangeDimension()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.IsLinear"><code class="docutils literal notranslate"><span class="pre">Curve.IsLinear()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.IsPolyline"><code class="docutils literal notranslate"><span class="pre">Curve.IsPolyline()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.TryGetPolyline"><code class="docutils literal notranslate"><span class="pre">Curve.TryGetPolyline()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.IsArc"><code class="docutils literal notranslate"><span class="pre">Curve.IsArc()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.TryGetArc"><code class="docutils literal notranslate"><span class="pre">Curve.TryGetArc()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.IsCircle"><code class="docutils literal notranslate"><span class="pre">Curve.IsCircle()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.TryGetCircle"><code class="docutils literal notranslate"><span class="pre">Curve.TryGetCircle()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.IsEllipse"><code class="docutils literal notranslate"><span class="pre">Curve.IsEllipse()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.TryGetEllipse"><code class="docutils literal notranslate"><span class="pre">Curve.TryGetEllipse()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.IsPlanar"><code class="docutils literal notranslate"><span class="pre">Curve.IsPlanar()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.ChangeClosedCurveSeam"><code class="docutils literal notranslate"><span class="pre">Curve.ChangeClosedCurveSeam()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.IsClosable"><code class="docutils literal notranslate"><span class="pre">Curve.IsClosable()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.Reverse"><code class="docutils literal notranslate"><span class="pre">Curve.Reverse()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.ClosedCurveOrientation"><code class="docutils literal notranslate"><span class="pre">Curve.ClosedCurveOrientation()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#id0"><code class="docutils literal notranslate"><span class="pre">Curve.ClosedCurveOrientation()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.PointAt"><code class="docutils literal notranslate"><span class="pre">Curve.PointAt()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.SetStartPoint"><code class="docutils literal notranslate"><span class="pre">Curve.SetStartPoint()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.SetEndPoint"><code class="docutils literal notranslate"><span class="pre">Curve.SetEndPoint()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.TangentAt"><code class="docutils literal notranslate"><span class="pre">Curve.TangentAt()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.CurvatureAt"><code class="docutils literal notranslate"><span class="pre">Curve.CurvatureAt()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.FrameAt"><code class="docutils literal notranslate"><span class="pre">Curve.FrameAt()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.DerivativeAt"><code class="docutils literal notranslate"><span class="pre">Curve.DerivativeAt()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#id1"><code class="docutils literal notranslate"><span class="pre">Curve.DerivativeAt()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.GetCurveParameterFromNurbsFormParameter"><code class="docutils literal notranslate"><span class="pre">Curve.GetCurveParameterFromNurbsFormParameter()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.GetNurbsFormParameterFromCurveParameter"><code class="docutils literal notranslate"><span class="pre">Curve.GetNurbsFormParameterFromCurveParameter()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.Trim"><code class="docutils literal notranslate"><span class="pre">Curve.Trim()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.Split"><code class="docutils literal notranslate"><span class="pre">Curve.Split()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#rhino3dm.Curve.ToNurbsCurve"><code class="docutils literal notranslate"><span class="pre">Curve.ToNurbsCurve()</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2"><code class="docutils literal notranslate"><span class="pre">Curve.ToNurbsCurve()</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="CurvePiping.html">CurvePiping</a></li>
<li class="toctree-l1"><a class="reference internal" href="CurveProxy.html">CurveProxy</a></li>
<li class="toctree-l1"><a class="reference internal" href="Cylinder.html">Cylinder</a></li>
<li class="toctree-l1"><a class="reference internal" href="Decal.html">Decal</a></li>
<li class="toctree-l1"><a class="reference internal" href="DimensionStyle.html">DimensionStyle</a></li>
<li class="toctree-l1"><a class="reference internal" href="Displacement.html">Displacement</a></li>
<li class="toctree-l1"><a class="reference internal" href="Dithering.html">Dithering</a></li>
<li class="toctree-l1"><a class="reference internal" href="DracoCompression.html">DracoCompression</a></li>
<li class="toctree-l1"><a class="reference internal" href="DracoCompressionOptions.html">DracoCompressionOptions</a></li>
<li class="toctree-l1"><a class="reference internal" href="EarthAnchorPoint.html">EarthAnchorPoint</a></li>
<li class="toctree-l1"><a class="reference internal" href="EdgeSoftening.html">EdgeSoftening</a></li>
<li class="toctree-l1"><a class="reference internal" href="Ellipse.html">Ellipse</a></li>
<li class="toctree-l1"><a class="reference internal" href="EmbeddedFile.html">EmbeddedFile</a></li>
<li class="toctree-l1"><a class="reference internal" href="Environment.html">Environment</a></li>
<li class="toctree-l1"><a class="reference internal" href="Extrusion.html">Extrusion</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dm.html">File3dm</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmBitmapTable.html">File3dmBitmapTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmDecalTable.html">File3dmDecalTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmDimStyleTable.html">File3dmDimStyleTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmEmbeddedFileTable.html">File3dmEmbeddedFileTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmGroupTable.html">File3dmGroupTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmInstanceDefinitionTable.html">File3dmInstanceDefinitionTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmLayerTable.html">File3dmLayerTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmLinetypeTable.html">File3dmLinetypeTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmMaterialTable.html">File3dmMaterialTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmMeshModifiers.html">File3dmMeshModifiers</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmObject.html">File3dmObject</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmObjectTable.html">File3dmObjectTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmPlugInData.html">File3dmPlugInData</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmPlugInDataTable.html">File3dmPlugInDataTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmPostEffectTable.html">File3dmPostEffectTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmRdkDocumentData.html">File3dmRdkDocumentData</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmRenderContentTable.html">File3dmRenderContentTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmSettings.html">File3dmSettings</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmShutLiningCurveTable.html">File3dmShutLiningCurveTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmStringTable.html">File3dmStringTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmViewTable.html">File3dmViewTable</a></li>
<li class="toctree-l1"><a class="reference internal" href="File3dmWriteOptions.html">File3dmWriteOptions</a></li>
<li class="toctree-l1"><a class="reference internal" href="FileReference.html">FileReference</a></li>
<li class="toctree-l1"><a class="reference internal" href="Font.html">Font</a></li>
<li class="toctree-l1"><a class="reference internal" href="GeometryBase.html">GeometryBase</a></li>
<li class="toctree-l1"><a class="reference internal" href="GroundPlane.html">GroundPlane</a></li>
<li class="toctree-l1"><a class="reference internal" href="Group.html">Group</a></li>
<li class="toctree-l1"><a class="reference internal" href="Hatch.html">Hatch</a></li>
<li class="toctree-l1"><a class="reference internal" href="InstanceDefinition.html">InstanceDefinition</a></li>
<li class="toctree-l1"><a class="reference internal" href="InstanceReference.html">InstanceReference</a></li>
<li class="toctree-l1"><a class="reference internal" href="Intersection.html">Intersection</a></li>
<li class="toctree-l1"><a class="reference internal" href="Interval.html">Interval</a></li>
<li class="toctree-l1"><a class="reference internal" href="Layer.html">Layer</a></li>
<li class="toctree-l1"><a class="reference internal" href="Light.html">Light</a></li>
<li class="toctree-l1"><a class="reference internal" href="Line.html">Line</a></li>
<li class="toctree-l1"><a class="reference internal" href="LinearWorkflow.html">LinearWorkflow</a></li>
<li class="toctree-l1"><a class="reference internal" href="LineCurve.html">LineCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="Linetype.html">Linetype</a></li>
<li class="toctree-l1"><a class="reference internal" href="Material.html">Material</a></li>
<li class="toctree-l1"><a class="reference internal" href="Mesh.html">Mesh</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshFaceList.html">MeshFaceList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshingParameters.html">MeshingParameters</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshNormalList.html">MeshNormalList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshTextureCoordinateList.html">MeshTextureCoordinateList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshTopologyEdgeList.html">MeshTopologyEdgeList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshVertexColorList.html">MeshVertexColorList</a></li>
<li class="toctree-l1"><a class="reference internal" href="MeshVertexList.html">MeshVertexList</a></li>
<li class="toctree-l1"><a class="reference internal" href="ModelComponent.html">ModelComponent</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsCurve.html">NurbsCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsCurveKnotList.html">NurbsCurveKnotList</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsCurvePointList.html">NurbsCurvePointList</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsSurface.html">NurbsSurface</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsSurfaceKnotList.html">NurbsSurfaceKnotList</a></li>
<li class="toctree-l1"><a class="reference internal" href="NurbsSurfacePointList.html">NurbsSurfacePointList</a></li>
<li class="toctree-l1"><a class="reference internal" href="ObjectAttributes.html">ObjectAttributes</a></li>
<li class="toctree-l1"><a class="reference internal" href="PhysicallyBasedMaterial.html">PhysicallyBasedMaterial</a></li>
<li class="toctree-l1"><a class="reference internal" href="Plane.html">Plane</a></li>
<li class="toctree-l1"><a class="reference internal" href="PlaneSurface.html">PlaneSurface</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point.html">Point</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point2d.html">Point2d</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point2f.html">Point2f</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point3d.html">Point3d</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point3dList.html">Point3dList</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point3f.html">Point3f</a></li>
<li class="toctree-l1"><a class="reference internal" href="Point4d.html">Point4d</a></li>
<li class="toctree-l1"><a class="reference internal" href="PointCloud.html">PointCloud</a></li>
<li class="toctree-l1"><a class="reference internal" href="PointCloudItem.html">PointCloudItem</a></li>
<li class="toctree-l1"><a class="reference internal" href="PointGrid.html">PointGrid</a></li>
<li class="toctree-l1"><a class="reference internal" href="PolyCurve.html">PolyCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="Polyline.html">Polyline</a></li>
<li class="toctree-l1"><a class="reference internal" href="PolylineCurve.html">PolylineCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="PostEffect.html">PostEffect</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderChannels.html">RenderChannels</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderContent.html">RenderContent</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderEnvironment.html">RenderEnvironment</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderEnvironments.html">RenderEnvironments</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderMaterial.html">RenderMaterial</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderSettings.html">RenderSettings</a></li>
<li class="toctree-l1"><a class="reference internal" href="RenderTexture.html">RenderTexture</a></li>
<li class="toctree-l1"><a class="reference internal" href="RevSurface.html">RevSurface</a></li>
<li class="toctree-l1"><a class="reference internal" href="SafeFrame.html">SafeFrame</a></li>
<li class="toctree-l1"><a class="reference internal" href="ShutLining.html">ShutLining</a></li>
<li class="toctree-l1"><a class="reference internal" href="ShutLiningCurve.html">ShutLiningCurve</a></li>
<li class="toctree-l1"><a class="reference internal" href="Skylight.html">Skylight</a></li>
<li class="toctree-l1"><a class="reference internal" href="Sphere.html">Sphere</a></li>
<li class="toctree-l1"><a class="reference internal" href="SubD.html">SubD</a></li>
<li class="toctree-l1"><a class="reference internal" href="Sun.html">Sun</a></li>
<li class="toctree-l1"><a class="reference internal" href="Surface.html">Surface</a></li>
<li class="toctree-l1"><a class="reference internal" href="SurfaceProxy.html">SurfaceProxy</a></li>
<li class="toctree-l1"><a class="reference internal" href="TextDot.html">TextDot</a></li>
<li class="toctree-l1"><a class="reference internal" href="Texture.html">Texture</a></li>
<li class="toctree-l1"><a class="reference internal" href="TextureMapping.html">TextureMapping</a></li>
<li class="toctree-l1"><a class="reference internal" href="Thickening.html">Thickening</a></li>
<li class="toctree-l1"><a class="reference internal" href="Transform.html">Transform</a></li>
<li class="toctree-l1"><a class="reference internal" href="Vector2d.html">Vector2d</a></li>
<li class="toctree-l1"><a class="reference internal" href="Vector3d.html">Vector3d</a></li>
<li class="toctree-l1"><a class="reference internal" href="Vector3f.html">Vector3f</a></li>
<li class="toctree-l1"><a class="reference internal" href="ViewInfo.html">ViewInfo</a></li>
<li class="toctree-l1"><a class="reference internal" href="ViewportInfo.html">ViewportInfo</a></li>
</ul>

        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="index.html">rhino3dm</a>
      </nav>

      <div class="wy-nav-content">
        <div class="rst-content">
          <div role="navigation" aria-label="Page navigation">
  <ul class="wy-breadcrumbs">
      <li><a href="index.html" class="icon icon-home" aria-label="Home"></a></li>
      <li class="breadcrumb-item active">Curve</li>
      <li class="wy-breadcrumbs-aside">
            <a href="_sources/Curve.rst.txt" rel="nofollow"> View page source</a>
      </li>
  </ul>
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
             
  <section id="module-rhino3dm">
<span id="curve"></span><h1>Curve<a class="headerlink" href="#module-rhino3dm" title="Link to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="rhino3dm.Curve">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">rhino3dm.</span></span><span class="sig-name descname"><span class="pre">Curve</span></span><a class="headerlink" href="#rhino3dm.Curve" title="Link to this definition"></a></dt>
<dd><dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.Domain">
<span class="sig-name descname"><span class="pre">Domain</span></span><a class="headerlink" href="#rhino3dm.Curve.Domain" title="Link to this definition"></a></dt>
<dd><p>rhino3dm.Interval: Gets or sets the domain of the curve.</p>
</dd></dl>

<dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.Dimension">
<span class="sig-name descname"><span class="pre">Dimension</span></span><a class="headerlink" href="#rhino3dm.Curve.Dimension" title="Link to this definition"></a></dt>
<dd><p>int: Gets the dimension of the object.
The dimension is typically three. For parameter space trimming
curves the dimension is two. In rare cases the dimension can
be one or greater than three.</p>
</dd></dl>

<dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.SpanCount">
<span class="sig-name descname"><span class="pre">SpanCount</span></span><a class="headerlink" href="#rhino3dm.Curve.SpanCount" title="Link to this definition"></a></dt>
<dd><p>int: Gets the number of non-empty smooth (c-infinity) spans in the curve.</p>
</dd></dl>

<dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.Degree">
<span class="sig-name descname"><span class="pre">Degree</span></span><a class="headerlink" href="#rhino3dm.Curve.Degree" title="Link to this definition"></a></dt>
<dd><p>int: Gets the maximum algebraic degree of any span
or a good estimate if curve spans are not algebraic.</p>
</dd></dl>

<dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.IsClosed">
<span class="sig-name descname"><span class="pre">IsClosed</span></span><a class="headerlink" href="#rhino3dm.Curve.IsClosed" title="Link to this definition"></a></dt>
<dd><p>bool: Gets a value indicating whether or not this curve is a closed curve.</p>
</dd></dl>

<dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.IsPeriodic">
<span class="sig-name descname"><span class="pre">IsPeriodic</span></span><a class="headerlink" href="#rhino3dm.Curve.IsPeriodic" title="Link to this definition"></a></dt>
<dd><p>bool: Gets a value indicating whether or not this curve is considered to be Periodic.</p>
</dd></dl>

<dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.PointAtStart">
<span class="sig-name descname"><span class="pre">PointAtStart</span></span><a class="headerlink" href="#rhino3dm.Curve.PointAtStart" title="Link to this definition"></a></dt>
<dd><p>rhino3dm.Point3d: Evaluates point at the start of the curve.</p>
</dd></dl>

<dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.PointAtEnd">
<span class="sig-name descname"><span class="pre">PointAtEnd</span></span><a class="headerlink" href="#rhino3dm.Curve.PointAtEnd" title="Link to this definition"></a></dt>
<dd><p>rhino3dm.Point3d: Evaluates point at the end of the curve.</p>
</dd></dl>

<dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.TangentAtStart">
<span class="sig-name descname"><span class="pre">TangentAtStart</span></span><a class="headerlink" href="#rhino3dm.Curve.TangentAtStart" title="Link to this definition"></a></dt>
<dd><p>rhino3dm.Vector3d: Evaluates the unit tangent vector at the start of the curve.</p>
</dd></dl>

<dl class="py attribute">
<dt class="sig sig-object py" id="rhino3dm.Curve.TangentAtEnd">
<span class="sig-name descname"><span class="pre">TangentAtEnd</span></span><a class="headerlink" href="#rhino3dm.Curve.TangentAtEnd" title="Link to this definition"></a></dt>
<dd><p>rhino3dm.Vector3d: Evaluate unit tangent vector at the end of the curve.</p>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.CreateControlPointCurve">
<em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">CreateControlPointCurve</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">points</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">degree</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.CreateControlPointCurve" title="Link to this definition"></a></dt>
<dd><p>Constructs a curve from a set of control-point locations.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>points</strong> (<em>list</em><em>[</em><a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d"><em>rhino3dm.Point3d</em></a><em>]</em>) – Control points.</p></li>
<li><p><strong>degree</strong> (<em>int</em>) – Degree of curve. The number of control points must be at least degree+1.</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#rhino3dm.Curve" title="rhino3dm.Curve">rhino3dm.Curve</a></p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.ChangeDimension">
<span class="sig-name descname"><span class="pre">ChangeDimension</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">desiredDimension</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.ChangeDimension" title="Link to this definition"></a></dt>
<dd><p>Changes the dimension of a curve.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>desiredDimension</strong> (<em>int</em>) – The desired dimension.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the curve’s dimension was already desiredDimension or if the curve’s dimension was successfully changed to desiredDimension; otherwise false.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.IsLinear">
<span class="sig-name descname"><span class="pre">IsLinear</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.IsLinear" title="Link to this definition"></a></dt>
<dd><p>Test a curve to see if it is linear to within RhinoMath.ZeroTolerance units (1e-12).</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if the curve is linear.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.IsPolyline">
<span class="sig-name descname"><span class="pre">IsPolyline</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.IsPolyline" title="Link to this definition"></a></dt>
<dd><p>Several types of Curve can have the form of a polyline
including a degree 1 NurbsCurve, a PolylineCurve,
and a PolyCurve all of whose segments are some form of
polyline. IsPolyline tests a curve to see if it can be
represented as a polyline.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if this curve can be represented as a polyline; otherwise, false.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.TryGetPolyline">
<span class="sig-name descname"><span class="pre">TryGetPolyline</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.TryGetPolyline" title="Link to this definition"></a></dt>
<dd><p>Several types of Curve can have the form of a polyline
including a degree 1 NurbsCurve, a PolylineCurve,
and a PolyCurve all of whose segments are some form of
polyline. IsPolyline tests a curve to see if it can be
represented as a polyline.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><p>tuple (bool, rhino3dm.Polyline)</p>
<ul class="simple">
<li><p>True if this curve can be represented as a polyline; otherwise, false.</p></li>
<li><p>If True is returned, then the polyline form is returned here. </p></li>
</ul>
</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>(bool, <a class="reference internal" href="Polyline.html#rhino3dm.Polyline" title="rhino3dm.Polyline">rhino3dm.Polyline</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.IsArc">
<span class="sig-name descname"><span class="pre">IsArc</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.IsArc" title="Link to this definition"></a></dt>
<dd><p>Test a curve to see if it can be represented by an arc or circle within RhinoMath.ZeroTolerance.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if the curve can be represented by an arc or a circle within tolerance.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.TryGetArc">
<span class="sig-name descname"><span class="pre">TryGetArc</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.TryGetArc" title="Link to this definition"></a></dt>
<dd><p>Try to convert this curve into an Arc using RhinoMath.ZeroTolerance.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><p>tuple (bool, Arc)</p>
<ul class="simple">
<li><p>True if the curve could be converted into an arc.</p></li>
<li><p>On success, the Arc will be filled in. </p></li>
</ul>
</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>(bool, <a class="reference internal" href="Arc.html#rhino3dm.Arc" title="rhino3dm.Arc">Arc</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.IsCircle">
<span class="sig-name descname"><span class="pre">IsCircle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.IsCircle" title="Link to this definition"></a></dt>
<dd><p>Test a curve to see if it can be represented by a circle within RhinoMath.ZeroTolerance.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if the Curve can be represented by a circle within tolerance.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.TryGetCircle">
<span class="sig-name descname"><span class="pre">TryGetCircle</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.TryGetCircle" title="Link to this definition"></a></dt>
<dd><p>Try to convert this curve into a circle using RhinoMath.ZeroTolerance.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><p>tuple (bool, Circle)</p>
<ul class="simple">
<li><p>True if the curve could be converted into a Circle.</p></li>
<li><p>On success, the Circle will be filled in. </p></li>
</ul>
</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>(bool, <a class="reference internal" href="Circle.html#rhino3dm.Circle" title="rhino3dm.Circle">Circle</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.IsEllipse">
<span class="sig-name descname"><span class="pre">IsEllipse</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.IsEllipse" title="Link to this definition"></a></dt>
<dd><p>Test a curve to see if it can be represented by an ellipse within RhinoMath.ZeroTolerance.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if the Curve can be represented by an ellipse within tolerance.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.TryGetEllipse">
<span class="sig-name descname"><span class="pre">TryGetEllipse</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.TryGetEllipse" title="Link to this definition"></a></dt>
<dd><p>Try to convert this curve into an Ellipse within RhinoMath.ZeroTolerance.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p><p>tuple (bool, Ellipse)</p>
<ul class="simple">
<li><p>True if the curve could be converted into an Ellipse.</p></li>
<li><p>On success, the Ellipse will be filled in. </p></li>
</ul>
</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>(bool, <a class="reference internal" href="Ellipse.html#rhino3dm.Ellipse" title="rhino3dm.Ellipse">Ellipse</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.IsPlanar">
<span class="sig-name descname"><span class="pre">IsPlanar</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.IsPlanar" title="Link to this definition"></a></dt>
<dd><p>Test a curve for planarity.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if the curve is planar (flat) to within RhinoMath.ZeroTolerance units (1e-12).</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.ChangeClosedCurveSeam">
<span class="sig-name descname"><span class="pre">ChangeClosedCurveSeam</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">t</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.ChangeClosedCurveSeam" title="Link to this definition"></a></dt>
<dd><p>If this curve is closed, then modify it so that the start/end point is at curve parameter t.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>t</strong> (<em>float</em>) – Curve parameter of new start/end point. The returned curves domain will start at t.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True on success, False on failure.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.IsClosable">
<span class="sig-name descname"><span class="pre">IsClosable</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tolerance</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">minimumAbsoluteSize</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">minimumRelativeSize</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.IsClosable" title="Link to this definition"></a></dt>
<dd><p>Decide if it makes sense to close off this curve by moving the endpoint
to the start based on start-end gap size and length of curve as
approximated by chord defined by 6 points.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True if start and end points are close enough based on above conditions.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.Reverse">
<span class="sig-name descname"><span class="pre">Reverse</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.Reverse" title="Link to this definition"></a></dt>
<dd><p>Reverses the direction of the curve.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>True on success, False on failure.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.ClosedCurveOrientation">
<span class="sig-name descname"><span class="pre">ClosedCurveOrientation</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.ClosedCurveOrientation" title="Link to this definition"></a></dt>
<dd><p>Determines the orientation (counterclockwise or clockwise) of a closed, planar curve in the world XY plane.
Only works with simple (no self intersections) closed, planar curves.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The orientation of this curve with respect to world XY plane.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>CurveOrientation</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="id0">
<span class="sig-name descname"><span class="pre">ClosedCurveOrientation</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">plane</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#id0" title="Link to this definition"></a></dt>
<dd><p>Determines the orientation (counterclockwise or clockwise) of a closed, planar curve in the world XY plane.
Only works with simple (no self intersections) closed, planar curves.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>The orientation of this curve with respect to world XY plane.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p>CurveOrientation</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.PointAt">
<span class="sig-name descname"><span class="pre">PointAt</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">t</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.PointAt" title="Link to this definition"></a></dt>
<dd><p>Evaluates point at a curve parameter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>t</strong> (<em>float</em>) – Evaluation parameter.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Point (location of curve at the parameter t).</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d">rhino3dm.Point3d</a></p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.SetStartPoint">
<span class="sig-name descname"><span class="pre">SetStartPoint</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">point</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.SetStartPoint" title="Link to this definition"></a></dt>
<dd><p>Forces the curve to start at a specified point.
Not all curve types support this operation.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>point</strong> (<a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d"><em>rhino3dm.Point3d</em></a>) – New start point of curve.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True on success, False on failure.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.SetEndPoint">
<span class="sig-name descname"><span class="pre">SetEndPoint</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">point</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.SetEndPoint" title="Link to this definition"></a></dt>
<dd><p>Forces the curve to end at a specified point.
Not all curve types support this operation.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>point</strong> (<a class="reference internal" href="Point3d.html#rhino3dm.Point3d" title="rhino3dm.Point3d"><em>rhino3dm.Point3d</em></a>) – New end point of curve.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True on success, False on failure.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>bool</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.TangentAt">
<span class="sig-name descname"><span class="pre">TangentAt</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">t</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.TangentAt" title="Link to this definition"></a></dt>
<dd><p>Evaluates the unit tangent vector at a curve parameter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>t</strong> (<em>float</em>) – Evaluation parameter.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Unit tangent vector of the curve at the parameter t.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="Vector3d.html#rhino3dm.Vector3d" title="rhino3dm.Vector3d">rhino3dm.Vector3d</a></p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.CurvatureAt">
<span class="sig-name descname"><span class="pre">CurvatureAt</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">t</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.CurvatureAt" title="Link to this definition"></a></dt>
<dd><p>Evaluate the curvature vector at a curve parameter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>t</strong> (<em>float</em>) – Evaluation parameter.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Curvature vector of the curve at the parameter t.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="Vector3d.html#rhino3dm.Vector3d" title="rhino3dm.Vector3d">rhino3dm.Vector3d</a></p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.FrameAt">
<span class="sig-name descname"><span class="pre">FrameAt</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">t</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.FrameAt" title="Link to this definition"></a></dt>
<dd><p>Returns a 3d frame at a parameter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>t</strong> (<em>float</em>) – Evaluation parameter.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (bool, rhino3dm.Plane)</p>
<ul class="simple">
<li><p>True on success, False on failure.</p></li>
<li><p>The frame is returned here. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(bool, <a class="reference internal" href="Plane.html#rhino3dm.Plane" title="rhino3dm.Plane">rhino3dm.Plane</a>)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.DerivativeAt">
<span class="sig-name descname"><span class="pre">DerivativeAt</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">t</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">derivativeCount</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.DerivativeAt" title="Link to this definition"></a></dt>
<dd><p>Evaluate the derivatives at the specified curve parameter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>t</strong> (<em>float</em>) – Curve parameter to evaluate.</p></li>
<li><p><strong>derivativeCount</strong> (<em>int</em>) – Number of derivatives to evaluate, must be at least 0.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>An array of vectors that represents all the derivatives starting at zero.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="Vector3d.html#rhino3dm.Vector3d" title="rhino3dm.Vector3d">rhino3dm.Vector3d</a>[]</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="id1">
<span class="sig-name descname"><span class="pre">DerivativeAt</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">t</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">derivativeCount</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">side</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#id1" title="Link to this definition"></a></dt>
<dd><p>Evaluate the derivatives at the specified curve parameter.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>An array of vectors that represents all the derivatives starting at zero.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="Vector3d.html#rhino3dm.Vector3d" title="rhino3dm.Vector3d">rhino3dm.Vector3d</a>[]</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.GetCurveParameterFromNurbsFormParameter">
<span class="sig-name descname"><span class="pre">GetCurveParameterFromNurbsFormParameter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">nurbsParameter</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.GetCurveParameterFromNurbsFormParameter" title="Link to this definition"></a></dt>
<dd><p>Convert a NURBS curve parameter to a curve parameter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>nurbsParameter</strong> (<em>float</em>) – NURBS form parameter.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (bool, float)</p>
<ul class="simple">
<li><p>True on success, False on failure.</p></li>
<li><p>Curve parameter. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(bool, float)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.GetNurbsFormParameterFromCurveParameter">
<span class="sig-name descname"><span class="pre">GetNurbsFormParameterFromCurveParameter</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">curveParameter</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.GetNurbsFormParameterFromCurveParameter" title="Link to this definition"></a></dt>
<dd><p>Convert a curve parameter to a NURBS curve parameter.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>curveParameter</strong> (<em>float</em>) – Curve parameter.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p><p>tuple (bool, float)</p>
<ul class="simple">
<li><p>True on success, False on failure.</p></li>
<li><p>NURBS form parameter. </p></li>
</ul>
</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p>(bool, float)</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.Trim">
<span class="sig-name descname"><span class="pre">Trim</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">t0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">t1</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.Trim" title="Link to this definition"></a></dt>
<dd><p>Removes portions of the curve outside the specified interval.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>t0</strong> (<em>float</em>) – Start of the trimming interval. Portions of the curve before curve(t0) are removed.</p></li>
<li><p><strong>t1</strong> (<em>float</em>) – End of the trimming interval. Portions of the curve after curve(t1) are removed.</p></li>
</ul>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Trimmed portion of this curve is successful, None on failure.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#rhino3dm.Curve" title="rhino3dm.Curve">rhino3dm.Curve</a></p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.Split">
<span class="sig-name descname"><span class="pre">Split</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">t</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.Split" title="Link to this definition"></a></dt>
<dd><p>Splits (divides) the curve at the specified parameter.
The parameter must be in the interior of the curve’s domain.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>t</strong> (<em>float</em>) – Parameter to split the curve at in the interval returned by Domain().</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>Two curves on success, None on failure.</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#rhino3dm.Curve" title="rhino3dm.Curve">rhino3dm.Curve</a>[]</p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="rhino3dm.Curve.ToNurbsCurve">
<span class="sig-name descname"><span class="pre">ToNurbsCurve</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#rhino3dm.Curve.ToNurbsCurve" title="Link to this definition"></a></dt>
<dd><p>Constructs a NURBS curve representation of this curve.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>NURBS representation of the curve on success, None on failure.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="NurbsCurve.html#rhino3dm.NurbsCurve" title="rhino3dm.NurbsCurve">rhino3dm.NurbsCurve</a></p>
</dd>
</dl>
</dd></dl>

<dl class="py method">
<dt class="sig sig-object py" id="id2">
<span class="sig-name descname"><span class="pre">ToNurbsCurve</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">subdomain</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#id2" title="Link to this definition"></a></dt>
<dd><p>Constructs a NURBS curve representation of this curve.</p>
<dl class="field-list simple">
<dt class="field-odd">Returns<span class="colon">:</span></dt>
<dd class="field-odd"><p>NURBS representation of the curve on success, None on failure.</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="NurbsCurve.html#rhino3dm.NurbsCurve" title="rhino3dm.NurbsCurve">rhino3dm.NurbsCurve</a></p>
</dd>
</dl>
</dd></dl>

</dd></dl>

</section>


           </div>
          </div>
          <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
        <a href="ConstructionPlane.html" class="btn btn-neutral float-left" title="ConstructionPlane" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
        <a href="CurvePiping.html" class="btn btn-neutral float-right" title="CurvePiping" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
    </div>

  <hr/>

  <div role="contentinfo">
    <p>&#169; Copyright 2019, Robert McNeel &amp; Associates.</p>
  </div>

  Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
    <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
    provided by <a href="https://readthedocs.org">Read the Docs</a>.
   

</footer>
        </div>
      </div>
    </section>
  </div>
  <script>
      jQuery(function () {
          SphinxRtdTheme.Navigation.enable(true);
      });
  </script> 

</body>
</html>